package com.ruoyi.report_lq.domain.bo;

import com.ruoyi.common.core.validate.AddGroup;
import com.ruoyi.common.core.validate.EditGroup;
import com.ruoyi.common.utils.BigDecimalUtil;
import com.ruoyi.report_tg.domain.bo.ExcelGeneralBo;
import lombok.Data;
import lombok.EqualsAndHashCode;
import javax.validation.constraints.*;

import java.util.Date;

import java.math.BigDecimal;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 沥青薄膜加热/旋转薄膜试验检测记录-新版本业务对象 report_lq_bmjr_bs_info
 *
 * @author zyb
 * @date 2024-10-30
 */

@Data
@EqualsAndHashCode(callSuper = true)
public class ReportLqBmjrBsInfoBo extends ExcelGeneralBo {

    /**
     * 一份excel表格的唯一id(其他的excel主表，都应有此字段）
     */
    @NotNull(message = "一份excel表格的唯一id(其他的excel主表，都应有此字段）不能为空", groups = { EditGroup.class })
    private Long excelId;

    /**
     * 共几页
     */
//    @NotNull(message = "共几页不能为空", groups = { AddGroup.class, EditGroup.class })
    private Long totalPage;

    /**
     * 第几页
     */
//    @NotNull(message = "第几页不能为空", groups = { AddGroup.class, EditGroup.class })
    private Long page;

    /**
     * 记录编号
     */
//    @NotBlank(message = "记录编号不能为空", groups = { AddGroup.class, EditGroup.class })
    private String jilbh;

    /**
     * 检测单位名称
     */
//    @NotBlank(message = "检测单位名称不能为空", groups = { AddGroup.class, EditGroup.class })
    private String jiancdwmc;

    /**
     * 工程名称
     */
//    @NotBlank(message = "工程名称不能为空", groups = { AddGroup.class, EditGroup.class })
    private String gongcmc;

    /**
     * 工程部位/用途
     */
//    @NotBlank(message = "工程部位/用途不能为空", groups = { AddGroup.class, EditGroup.class })
    private String gongcbwyt;

    /**
     * 样品名称
     */
//    @NotBlank(message = "样品名称不能为空", groups = { AddGroup.class, EditGroup.class })
    private String yangpmc;

    /**
     * 样品编号
     */
//    @NotBlank(message = "样品编号不能为空", groups = { AddGroup.class, EditGroup.class })
    private String yangpbh;

    /**
     * 样品数量
     */
//    @NotBlank(message = "样品数量不能为空", groups = { AddGroup.class, EditGroup.class })
    private String yangpsl;

    /**
     * 样品状态
     */
//    @NotBlank(message = "样品状态不能为空", groups = { AddGroup.class, EditGroup.class })
    private String yangpzt;

    /**
     * 样品时间
     */
//    @NotBlank(message = "样品时间不能为空", groups = { AddGroup.class, EditGroup.class })
    private String yangpsj;

    /**
     * 试验检测日期
     */
//    @NotBlank(message = "试验检测日期不能为空", groups = { AddGroup.class, EditGroup.class })
    private String shiyjcrq;

    /**
     * 试验条件温度
     */
//    @NotBlank(message = "试验条件温度不能为空", groups = { AddGroup.class, EditGroup.class })
    private String shiytjwd;

    /**
     * 试验条件湿度
     */
//    @NotBlank(message = "试验条件湿度不能为空", groups = { AddGroup.class, EditGroup.class })
    private String shiytjsd;

    /**
     * 检测依据
     */
//    @NotBlank(message = "检测依据不能为空", groups = { AddGroup.class, EditGroup.class })
    private String jiancyj;

    /**
     * 判定依据
     */
//    @NotBlank(message = "判定依据不能为空", groups = { AddGroup.class, EditGroup.class })
    private String pandyj;

    /**
     * 检测依据ids
     */
//    @NotBlank(message = "检测依据ids不能为空", groups = { AddGroup.class, EditGroup.class })
    private String jiancyjIds;

    /**
     * 判定依据ids
     */
//    @NotBlank(message = "判定依据ids不能为空", groups = { AddGroup.class, EditGroup.class })
    private String pandyjIds;

    /**
     * 主要仪器设备名称及编号
     */
//    @NotBlank(message = "主要仪器设备名称及编号不能为空", groups = { AddGroup.class, EditGroup.class })
    private String zhuyyqsbmcjbh;

    /**
     * 设备id逗号分隔
     */
//    @NotBlank(message = "设备id逗号分隔不能为空", groups = { AddGroup.class, EditGroup.class })
    private String shebIds;

    /**
     * 附加声明
     */
//    @NotBlank(message = "附加声明不能为空", groups = { AddGroup.class, EditGroup.class })
    private String fujsm;

    /**
     * 盛样皿质量1
     */
//    @NotNull(message = "盛样皿质量1不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal a1;

    /**
     * 加热前盛样皿与试样质量1
     */
//    @NotNull(message = "加热前盛样皿与试样质量1不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal b1;

    /**
     * 加热后盛样皿与试样质量1
     */
//    @NotNull(message = "加热后盛样皿与试样质量1不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal c1;

    /**
     * 质量变化1
     */
//    @NotNull(message = "质量变化1不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal d1;

    /**
     * 质量变化平均值
     */
//    @NotNull(message = "质量变化平均值不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal e1;

    /**
     * 盛样皿质量2
     */
//    @NotNull(message = "盛样皿质量2不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal a2;

    /**
     * 加热前盛样皿与试样质量2
     */
//    @NotNull(message = "加热前盛样皿与试样质量2不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal b2;

    /**
     * 加热后盛样皿与试样质量2
     */
//    @NotNull(message = "加热后盛样皿与试样质量2不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal c2;

    /**
     * 质量变化2
     */
//    @NotNull(message = "质量变化2不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal d2;

    /**
     * 试验温度
     */
//    @NotNull(message = "试验温度不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal a3;

    /**
     * 荷重
     */
//    @NotNull(message = "荷重不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal b3;

    /**
     * 贯入时间
     */
//    @NotNull(message = "贯入时间不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal c3;

    /**
     * 针入度1-1
     */
//    @NotNull(message = "针入度1-1不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal d3;

    /**
     * 针入度2-1
     */
//    @NotNull(message = "针入度2-1不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal e3;

    /**
     * 针入度3-1
     */
//    @NotNull(message = "针入度3-1不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal f3;

    /**
     * 针入度平均值1
     */
//    @NotNull(message = "针入度平均值1不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal g3;

    /**
     * 残留针入度比
     */
//    @NotNull(message = "残留针入度比不能为空", groups = { AddGroup.class, EditGroup.class })
    private String h3;

    /**
     * 针入度1-2
     */
//    @NotNull(message = "针入度1-2不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal d4;

    /**
     * 针入度2-2
     */
//    @NotNull(message = "针入度2-2不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal e4;

    /**
     * 针入度3-2
     */
//    @NotNull(message = "针入度3-2不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal f4;

    /**
     * 针入度平均值2
     */
//    @NotNull(message = "针入度平均值2不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal g4;

    /**
     * 试验温度1
     */
//    @NotNull(message = "试验温度1不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal a5;

    /**
     * 保温时间1
     */
//    @NotNull(message = "保温时间1不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal b5;

    /**
     * 拉伸速度1
     */
//    @NotNull(message = "拉伸速度1不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal c5;

    /**
     * 延度11
     */
//    @NotNull(message = "延度11不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal d5;

    /**
     * 延度21
     */
//    @NotNull(message = "延度21不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal e5;

    /**
     * 延度31
     */
//    @NotNull(message = "延度31不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal f5;

    /**
     * 延度平均值1
     */
//    @NotNull(message = "延度平均值1不能为空", groups = { AddGroup.class, EditGroup.class })
    private String g5;

    /**
     * 试验温度2
     */
//    @NotNull(message = "试验温度2不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal a6;

    /**
     * 保温时间2
     */
//    @NotNull(message = "保温时间2不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal b6;

    /**
     * 拉伸速度2
     */
//    @NotNull(message = "拉伸速度2不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal c6;

    /**
     * 延度12
     */
//    @NotNull(message = "延度12不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal d6;

    /**
     * 延度22
     */
//    @NotNull(message = "延度22不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal e6;

    /**
     * 延度32
     */
//    @NotNull(message = "延度32不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal f6;

    /**
     * 延度平均值2
     */
//    @NotNull(message = "延度平均值2不能为空", groups = { AddGroup.class, EditGroup.class })
    private String g6;

    /**
     * 起始温度
     */
//    @NotNull(message = "起始温度不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal a7;

    /**
     * 加热介质
     */
//    @NotNull(message = "加热介质不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal b7;

    /**
     * 升温速度
     */
//    @NotNull(message = "升温速度不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal c7;

    /**
     * 软化点1-1
     */
//    @NotNull(message = "软化点1-1不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal d7;

    /**
     * 软化点2-1
     */
//    @NotNull(message = "软化点2-1不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal e7;

    /**
     * 残留软化点增值
     */
//    @NotNull(message = "残留软化点增值不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal f7;

    /**
     * 软化点1-2
     */
//    @NotNull(message = "软化点1-2不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal d8;

    /**
     * 软化点2-2
     */
//    @NotNull(message = "软化点2-2不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal e8;

    /**
     * 试样1
     */
//    @NotBlank(message = "试样1不能为空", groups = { AddGroup.class, EditGroup.class })
    private String a9;

    /**
     * 加热试验前60°黏度
     */
//    @NotNull(message = "加热试验前60°黏度不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal b9;

    /**
     * 加热试验后60°黏度
     */
//    @NotNull(message = "加热试验后60°黏度不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal c9;

    /**
     * 加热试验黏度比
     */
//    @NotNull(message = "加热试验黏度比不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal d9;

    /**
     * 平均值
     */
//    @NotNull(message = "平均值不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal e9;

    /**
     * 加热试验的老化指数
     */
//    @NotNull(message = "加热试验的老化指数不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal f9;

    /**
     * 平均值
     */
//    @NotNull(message = "平均值不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal g9;

    /**
     * 试样2
     */
//    @NotBlank(message = "试样2不能为空", groups = { AddGroup.class, EditGroup.class })
    private String a10;

    /**
     * 加热试验前60°黏度
     */
//    @NotNull(message = "加热试验前60°黏度不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal b10;

    /**
     * 加热试验后60°黏度
     */
//    @NotNull(message = "加热试验后60°黏度不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal c10;

    /**
     * 加热试验黏度比
     */
//    @NotNull(message = "加热试验黏度比不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal d10;

    /**
     * 加热试验的老化指数
     */
//    @NotNull(message = "加热试验的老化指数不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal f10;

    public void setA1(BigDecimal a1) {
        this.a1 = BigDecimalUtil.stpTrailZero(a1);
    }

    public void setB1(BigDecimal b1) {
        this.b1 = BigDecimalUtil.stpTrailZero(b1);
    }

    public void setC1(BigDecimal c1) {
        this.c1 = BigDecimalUtil.stpTrailZero(c1);
    }

    public void setD1(BigDecimal d1) {
        this.d1 = BigDecimalUtil.stpTrailZero(d1);
    }

    public void setE1(BigDecimal e1) {
        this.e1 = BigDecimalUtil.stpTrailZero(e1);
    }

    public void setA2(BigDecimal a2) {
        this.a2 = BigDecimalUtil.stpTrailZero(a2);
    }

    public void setB2(BigDecimal b2) {
        this.b2 = BigDecimalUtil.stpTrailZero(b2);
    }

    public void setC2(BigDecimal c2) {
        this.c2 = BigDecimalUtil.stpTrailZero(c2);
    }

    public void setD2(BigDecimal d2) {
        this.d2 = BigDecimalUtil.stpTrailZero(d2);
    }

    public void setA3(BigDecimal a3) {
        this.a3 = BigDecimalUtil.stpTrailZero(a3);
    }

    public void setB3(BigDecimal b3) {
        this.b3 = BigDecimalUtil.stpTrailZero(b3);
    }

    public void setA5(BigDecimal a5) {
        this.a5 = BigDecimalUtil.stpTrailZero(a5);
    }

    public void setB5(BigDecimal b5) {
        this.b5 = BigDecimalUtil.stpTrailZero(b5);
    }

    public void setC5(BigDecimal c5) {
        this.c5 = BigDecimalUtil.stpTrailZero(c5);
    }

    public void setD5(BigDecimal d5) {
        this.d5 = BigDecimalUtil.stpTrailZero(d5);
    }

    public void setE5(BigDecimal e5) {
        this.e5 = BigDecimalUtil.stpTrailZero(e5);
    }

    public void setF5(BigDecimal f5) {
        this.f5 = BigDecimalUtil.stpTrailZero(f5);
    }

    public void setA6(BigDecimal a6) {
        this.a6 = BigDecimalUtil.stpTrailZero(a6);
    }

    public void setB6(BigDecimal b6) {
        this.b6 = BigDecimalUtil.stpTrailZero(b6);
    }

    public void setC6(BigDecimal c6) {
        this.c6 = BigDecimalUtil.stpTrailZero(c6);
    }

    public void setD6(BigDecimal d6) {
        this.d6 = BigDecimalUtil.stpTrailZero(d6);
    }

    public void setE6(BigDecimal e6) {
        this.e6 = BigDecimalUtil.stpTrailZero(e6);
    }

    public void setF6(BigDecimal f6) {
        this.f6 = BigDecimalUtil.stpTrailZero(f6);
    }

    public void setA7(BigDecimal a7) {
        this.a7 = BigDecimalUtil.stpTrailZero(a7);
    }

    public void setB7(BigDecimal b7) {
        this.b7 = BigDecimalUtil.stpTrailZero(b7);
    }

    public void setC7(BigDecimal c7) {
        this.c7 = BigDecimalUtil.stpTrailZero(c7);
    }

    public void setD7(BigDecimal d7) {
        this.d7 = BigDecimalUtil.stpTrailZero(d7);
    }

    public void setE7(BigDecimal e7) {
        this.e7 = BigDecimalUtil.stpTrailZero(e7);
    }

    public void setF7(BigDecimal f7) {
        this.f7 = BigDecimalUtil.stpTrailZero(f7);
    }

    public void setD8(BigDecimal d8) {
        this.d8 = BigDecimalUtil.stpTrailZero(d8);
    }

    public void setE8(BigDecimal e8) {
        this.e8 = BigDecimalUtil.stpTrailZero(e8);
    }

    public void setB9(BigDecimal b9) {
        this.b9 = BigDecimalUtil.stpTrailZero(b9);
    }

    public void setC9(BigDecimal c9) {
        this.c9 = BigDecimalUtil.stpTrailZero(c9);
    }

    public void setD9(BigDecimal d9) {
        this.d9 = BigDecimalUtil.stpTrailZero(d9);
    }

    public void setE9(BigDecimal e9) {
        this.e9 = BigDecimalUtil.stpTrailZero(e9);
    }

    public void setF9(BigDecimal f9) {
        this.f9 = BigDecimalUtil.stpTrailZero(f9);
    }

    public void setG9(BigDecimal g9) {
        this.g9 = BigDecimalUtil.stpTrailZero(g9);
    }

    public void setB10(BigDecimal b10) {
        this.b10 = BigDecimalUtil.stpTrailZero(b10);
    }

    public void setC10(BigDecimal c10) {
        this.c10 = BigDecimalUtil.stpTrailZero(c10);
    }

    public void setD10(BigDecimal d10) {
        this.d10 = BigDecimalUtil.stpTrailZero(d10);
    }

    public void setF10(BigDecimal f10) {
        this.f10 = BigDecimalUtil.stpTrailZero(f10);
    }
}
